#include "hamster_thread_pool.h"

// -------------- Sync Thread Pool ---------------
using namespace hamster;

std::string ThreadPoolSync::name() 
{
    return "SyncThreadPool";
};

ThreadPoolSync::ThreadPoolSync(int num_threads) : ThreadPoolBase(num_threads)
{
    this->num_threads = num_threads;
    this->stop = false;
    this->id = {0};

    for (int i = 0; i < num_threads; i++)
    {
        workers.emplace_back(
            [this, i]() -> void
            {
                std::function<void()> task;
                while(true)
                {
                    {
                        std::unique_lock<std::mutex> lock(this->queue_mutex);
                    }
                }
            }
        );
    }
}